﻿using System;
using System.Collections.Generic;
using System.Data;
using KPIS.GERP.GHRMS.MODEL;

namespace KPIS.GERP.GHRMS.IDAL
{
    public interface IPositionDAL
    {
        DataTable ListPositions();
        DataSet LoadPositions(PositionInfo posInfo);
        IList<PositionInfo> ListPositions(PositionInfo posInfo);
        IList<PositionInfo> LoadPositionTreeView(Nullable<int> EmpTypeSeq);
        IList<PositionInfo> LoadWorkingTreeView(Nullable<int> EmpTypeSeq);
        IList<TreeViewInfo> LoadPositionJobsites(Nullable<int> EmpTypeSeq, string ParentID);
        EmployeeInfo LoadEmployeeOfPosition(int PositionSeq);
        DataTable LoadPositionWorkingJobsites(Nullable<int> EmpTypeSeq, string ParentID);
		Dictionary<string, string> GetJobSiteAndPositionTypeAndClassByPosition(string positionSeq);
        void Insert(PositionInfo Info);
        void Update(PositionInfo Info);
        void Delete(int Sequence, int UpdatedBy);
        void UpdateUpper(int Sequence, string Upper, int UpdatedBy);
        void UpdateWorkingUpper(int Sequence, string WorkingUpper, int UpdatedBy);
        void UpdateJobSites(int Sequence, string JobSiteSeq, int UpdatedBy);
        List<WorkOnDuty> SelectWorkOnDuty(); 
        WorkOnDuty InsertWorkOnDuty(WorkOnDuty word);
        WorkOnDuty UpdateWorkOnDuty(WorkOnDuty word);
        WorkOnDuty DeleteWorkOnDuty(WorkOnDuty word);

    }
}
